Method and device for audibly instructing a user to interact with a function

ABSTRACT

A method for audibly instructing a user to interact with a function. A function is associated with a user-written selectable item. The user-written selectable item is recognized on a surface. In response to recognizing the user-written selectable item, a first instructional message related to the operation of the function is audibly rendered without requiring further interaction from the user.

RELATED APPLICATIONS

This Application is a Continuation Application of co-pending,commonly-owned U.S. patent application Ser. No. 11/264,955, now U.S.Pat. No. 7,853,192, filed Nov. 1, 2005, to James Marggraff, entitled “AMETHOD AND DEVICE FOR AUDIBLY INSTRUCTING A USER TO INTERACT WITH AFUNCTION,” which is incorporated herein by reference in its entirety.

In turn, U.S. Pat. No. 7,853,192 was a Continuation-in-Part of theco-pending, commonly-owned U.S. Patent Application, Attorney Docket No.020824-004610US, application Ser. No. 10/803,806, filed Mar. 17, 2004,by James Marggraff et al., entitled “SCANNING APPARATUS,” and herebyincorporated by reference herein in its entirety.

In turn, U.S. Pat. No. 7,853,192 was a Continuation-in-Part of theco-pending, commonly-owned U.S. Patent Application, Attorney Docket No.020824-009500US, application Ser. No. 10/861,243, filed Jun. 3, 2004, byJames Marggraff et al., entitled “USER CREATED INTERACTIVE INTERFACE,”and hereby incorporated by reference herein in its entirety.

In turn, U.S. Pat. No. 7,853,192 was a Continuation-in-Part of theco-pending, commonly-owned U.S. Patent Application, Attorney Docket No.LEAP-P0313, application Ser. No. 11/034,491 filed Jan. 12, 2005, byJames Marggraff. et al., entitled “A METHOD AND SYSTEM FOR IMPLEMENTINGA USER INTERFACE FOR A DEVICE EMPLOYING WRITTEN GRAPHICAL ELEMENTS,” andhereby incorporated by reference herein in its entirety.

This application is related to co-pending, commonly-owned U.S. PatentApplication, Attorney Docket No. LEAP-P0316, application Ser. No.11/035,155 filed Jan. 12, 2005, by James Marggraff et al., entitled “AMETHOD AND SYSTEM FOR IMPLEMENTING A USER INTERFACE FOR A DEVICE THROUGHRECOGNIZED TEXT AND BOUNDED AREAS,” and hereby incorporated by referenceherein in its entirety.

This application is related to co-pending, commonly-owned U.S. PatentApplication, Attorney Docket No. LEAP-P0320, application Ser. No.11/035,003 filed Jan. 12, 2005, by James Marggraff et al., entitled“TERMINATION EVENTS,” and hereby incorporated herein in its entirety.

FIELD OF INVENTION

Embodiments of the present invention relate to the field of interactivedevices. More specifically, embodiments of the present invention relateto a pen-based interactive device.

BACKGROUND OF INVENTION

Devices such as optical readers or optical pens conventionally emitlight that reflects off a surface to a detector or imager. As the deviceis moved relative to the surface (or vice versa), successive images arerapidly captured. By analyzing the images, movement of the opticaldevice relative to the surface can be tracked.

One type of optical pen is used with a sheet of paper on which verysmall dots are printed. The dots are printed on the page in a patternwith a nominal spacing of about 0.3 millimeters (0.01 inches). Thepattern of dots within any region on the page is unique to that region.The optical pen essentially takes a snapshot of the surface, perhaps 100times a second or more. By interpreting the dot positions captured ineach snapshot, the optical pen can precisely determine its positionrelative to the page.

Applications that utilize information about the position of an opticalpen relative to a surface have been or are being devised. An optical penwith Bluetooth or other wireless capability can be linked to otherdevices and used for sending electronic mail (e-mail) or faxes.

The increasing power of embedded computer systems and the complexity ofthe functions they are able to implement have created a need for a moreintuitive and user-friendly manner of accessing such power. A typicalprior art optical pen will implement its intended functionality by theuser operating one or more buttons/switches or controls of the opticalpen to activate one or more software programs, routines, embeddeddevices, or the like. The pen may contain or be in communication with acomputer system. Upon actuation of such controls, the pen deviceperforms its intended function. Accessing the capabilities ofincreasingly powerful optical pens through the limited number andconfiguration of switches, buttons, etc. provided on the pen itself, orany remotely coupled computer system device, is not a satisfactoryarrangement.

One prior art solution uses the optical pen to recognize a user-definedcommand, and uses that command to invoke some function of the pen (e.g.,PCT publication WO/01/48590 A1). For example, a user's writing can berecognized (e.g., in real-time) and interpreted as a command for theoptical pen. The drawback with this solution involves the fact thatinteraction and control of the functions of the pen requires real-timerecognition of the user's handwriting (e.g., as the user writes thecommand down on a sheet of paper). This solution is not satisfactory dueto the fact that interaction with more complex functionality of anoptical pen requires the user to repeatedly write-down one or morecommands to access different choices, options, or functions provided bythe pen. While the solution might be satisfactory for exceedinglysimple, single step type applications (e.g., “turn off”, “store”, etc.),the solution is overly cumbersome and limiting in those cases where morecomplex, satisfying, rich functionality is desired.

SUMMARY OF THE INVENTION

Accordingly, a need exists for an interactive device that provides anefficient user interface for interacting with functions associated withuser-written selectable items. A need also exists for an interactivedevice that satisfies the above need and provides audible instruction toa user that assists in enabling interaction with the function. A needalso exists for an interactive device that satisfies the first need andprovides automatic execution of particular functions without firstrequiring additional user interaction.

Various embodiments of the present invention, a method for audiblyinstructing a user to interact with a function, are described herein. Afunction is associated with a user-written selectable item. Theuser-written selectable item is recognized on a surface. In oneembodiment the recognizing the user-written selectable item is performedin response to detecting a termination event indicating that theuser-written selectable item is complete. In one embodiment, recognizingthe user-written selectable item includes optically recording positionsof the tip of a pen computer and performing image recognition of thepositions to recognize the user-written selectable item.

In response to the recognizing the user-written selectable item, a firstinstructional message related to the operation of the function isaudibly rendered without requiring further interaction from the user. Inone embodiment, the first instructional message directs the user to drawat least one user interface element that enables the user to interfacewith the function. In one embodiment, the function is executed prior toaudibly rendering the first instructional message. In one embodiment,audibly rendering the first instructional message is performed by anaudio output device of a pen computer.

In one embodiment, it is determined whether a writing has been drawn onthe surface within a predetermined time period since the firstinstructional message was audibly rendered. Provided no writing has beendrawn on the surface within the predetermined time period, the firstinstructional message is repeated.

In one embodiment, it is determined whether the user interface elementhas been properly drawn on the surface. Provided the user interfaceelement has not been properly drawn on the surface, a secondinstructional message comprising a hint about a manner in which the usershould properly draw the user interface element is audibly rendered. Inone embodiment, provided the user interface element has been properlydrawn, a third instructional message is audibly rendered. In anotherembodiment, provided the user interface element has been properly drawn,the function is executed. In one embodiment, in response to a userinteraction with the user-written selectable item, the firstinstructional message is repeated.

In another embodiment, the present invention provides an interactivedevice including a bus, a processor, a memory unit, an audio outputdevice, a writing element, and an optical detector that is operable toimplement the described method for audibly instructing a user tointeract with a function. In another embodiment, the present inventionprovides a computer-usable medium having computer-readable program codeembodied therein for causing a computer system to perform the describedmethod for audibly instructing a user to interact with a function.

In other various embodiments described herein, the present inventionprovides a method for automatically executing a function. A function isassociated with a user-written selectable item. The user-writtenselectable item is recognized on a surface. In one embodiment therecognizing the user-written selectable item is performed in response todetecting a termination event indicating that the user-writtenselectable item is complete.

In response to the recognizing the user-written selectable item, thefunction is immediately executed without first requiring furtherinteraction between a user and the surface. In one embodiment, thefunction is immediately executed without first requiring auxiliarywriting by the user on the surface.

In one embodiment, an instructional message related to the operation ofthe function is audibly rendered without first requiring furtherinteraction between the user and the surface. In one embodiment, theinstructional message is audibly rendered in response to the lapsing ofa predetermined time period without user interaction with the surface.In one embodiment, in response to a user interaction with theuser-written selectable item, the function is re-executed.

In another embodiment, the present invention provides an interactivedevice including a bus, a processor, a memory unit, an audio outputdevice, a writing element, and an optical detector that is operable toimplement the described method for automatically executing a function.In another embodiment, the present invention provides a computer-usablemedium having computer-readable program code embodied therein forcausing a computer system to perform the described method forautomatically executing a function.

In the various embodiments, the user-written selectable item includesone of: a symbol representation of an application program executable bythe processor, a menu item of an application program executable by theprocessor, a navigation item, a data, an application option selector, oranother selectable item.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and form a part ofthis specification, illustrate embodiments of the invention and,together with the description, serve to explain the principles of theinvention:

FIG. 1 illustrates an interactive device in accordance with anembodiment of the present invention.

FIGS. 2A through 2D illustrate exemplary user-written selectable itemson a sheet of paper, in accordance with embodiments of the presentinvention.

FIG. 3 shows an exemplary sheet of paper provided with a pattern ofmarks according to one embodiment of the present invention.

FIG. 4 shows an enlargement of a pattern of marks on an exemplary sheetof paper according to one embodiment of the present invention.

FIG. 5 shows a flowchart of the steps of a process for facilitatinginteraction with user-written selectable items on a surface inaccordance with one embodiment of the present invention.

FIG. 6 is a block diagram of another device upon which embodiments ofthe present invention can be implemented.

FIG. 7 is a block diagram of another device upon which embodiments ofthe present invention can be implemented.

FIGS. 8A and 8B show a flowchart of a process for audibly instructing auser to interact with a function in accordance with one embodiment ofthe present invention.

FIG. 9 shows a flowchart of a process for automatically executing afunction in accordance with one embodiment of the present invention.

DETAILED DESCRIPTION

Reference will now be made in detail to various embodiments of theinvention, an interactive device that allows a user to create andinteract with selectable items written on a surface, examples of whichare illustrated in the accompanying drawings. While the invention willbe described in conjunction with these embodiments, it is understoodthat they are not intended to limit the invention to these embodiments.On the contrary, the invention is intended to cover alternatives,modifications and equivalents, which may be included within the spiritand scope of the invention as defined by the appended claims.Furthermore, in the following detailed description of the invention,numerous specific details are set forth in order to provide a thoroughunderstanding of the invention. However, it will be recognized by one ofordinary skill in the art that the invention may be practiced withoutthese specific details. In other instances, well known methods,procedures, components, and circuits have not been described in detailas not to unnecessarily obscure aspects of the invention.

Some portions of the detailed descriptions, which follow, are presentedin terms of procedures, steps, logic blocks, processing, and othersymbolic representations of operations on data bits that can beperformed on computer memory. These descriptions and representations arethe means used by those skilled in the data processing arts to mosteffectively convey the substance of their work to others skilled in theart. A procedure, computer executed step, logic block, process, etc., ishere, and generally, conceived to be a self-consistent sequence of stepsor instructions leading to a desired result. The steps are thoserequiring physical manipulations of physical quantities. Usually, thoughnot necessarily, these quantities take the form of electrical ormagnetic signals capable of being stored, transferred, combined,compared, and otherwise manipulated in a computer system. It has provenconvenient at times, principally for reasons of common usage, to referto these signals as bits, values, elements, symbols, characters, terms,numbers, or the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the followingdiscussions, it is appreciated that throughout the present invention,discussions utilizing terms such as “associating” or “recognizing” or“rendering” or “requiring” or “determining” or “repeating” or“executing” or “detecting” or “directing” or the like, refer to theaction and processes of an electronic system (e.g., interactive device100 of FIG. 1), or similar electronic computing device, that manipulatesand transforms data represented as physical (electronic) quantitieswithin the electronic device's registers and memories into other datasimilarly represented as physical quantities within the electronicdevice memories or registers or other such information storage,transmission or display devices.

Embodiments of the Invention

Various embodiments of the present invention, a method and device foraudibly instructing a user to interact with a function, are describedherein. In one embodiment, the described embodiments are implementedwithin an interactive device that allows a user to create and interactwith selectable items written on a surface. The present inventionprovides a user with an interface that replaces an electronic displaywith any writable surface, such as a piece of paper. The user may createuser-written selectable items on the surface that execute associatedfunctions and/or represent user-written data, e.g., words, characters,numbers, symbols, etc. The user-written selectable items are persistenton the surface, allowing a user to execute functions associated withdifferent selectable items throughout operation of the interactivedevice. In one embodiment, in response to recognizing a particularuser-written selectable item as being associated with a particularfunction, the interactive device audibly renders an instructionalmessage related to the operation of the function. In another embodiment,in another embodiment, in response to recognizing a particularuser-written selectable item as being associated with a particularfunction, the interactive device immediately executes the function.

FIG. 1 illustrates an interactive device 100 in accordance with anembodiment of the present invention. Interactive device 100 includesprocessor 112, memory unit 114, audio output device 116, writing element118 and optical detector 120 within housing 130. In one embodiment,processor 112, memory unit 114, audio output device 116 and opticaldetector 120 are communicatively coupled over bus 122.

In one embodiment, housing 130 is shaped in the form of a stylus or awriting instrument (e.g., pen-like). A user may hold interactive device100 in a similar manner as a stylus is held. Writing element 118 islocated at one end of housing 130 such that a user can place writingelement 118 in contact with a writable surface (not shown). Writingelement 118 may include a pen, a pencil, a marker, a crayon, or anyother marking material. It should be appreciated that writing element118 may also include a non-marking tip. During use, a user can holdinteractive device 100 and use it in a similar manner as a writinginstrument to write on a surface, such as paper.

Writing element 118 may be used to create user-written selectable itemson the surface. A “user-written selectable item” may include any markingcreated by the user. If a marking is made on a surface (e.g., a sheet ofpaper), the user-written selectable item may be a print element.User-written selectable item include, but are not limited to symbols,indicia such as letters and/or numbers, characters, words, shapes,lines, etc. They can be regular or irregular in shape, and they aretypically created using the stylus.

Interactive device 100 allows users to create user-written selectableitems that represent different functions provided by interactive device100. In one embodiment, the user-written selectable item includes asymbol representation of an application program executable by processor112 (e.g., a calculator application or a dictionary application). Inanother embodiment, the user-written selectable item may include anavigation item (e.g., a menu), a menu item of an application programexecutable by said processor, an application option selector, or aninstance of data (e.g., a word).

In some embodiments, the user-written selectable item can include aletter or number with a line circumscribing the letter or number. Theline circumscribing the letter or number may be a circle, oval, square,polygon, etc. Such user-written selectable items appear to be like“buttons” that can be selected by the user, instead of ordinary lettersand numbers. By creating a user-written selectable item of this kind,the user can visually distinguish user-written selectable items such asfunctional icons from ordinary letters and numbers. Also, by creatinguser-written selectable items of this kind, interactive device 100 mayalso be able to better distinguish functional or menu item typeuser-written selectable items from non-functional or non-menu item typeuser-written items. For instance, a user may create a user-writtenselectable item that is the letter “M” which has a circle around it tocreate an interactive “menu” icon. The interactive device 100 may beprogrammed to recognize an overlapping circle or square with the letter“M” in it as a functional user-written selectable item as distinguishedfrom the letter “M” in a word. Computer code for recognizing suchfunctional user-written selectable items and distinguishing them fromother non-functional user-written items can reside in memory unit 114 ininteractive device 100.

In another embodiment, the described user-written selectable items mayinclude multiple characters, such as the letters “FT” which have acircle around it to create an interactive musical keyboard icon. Inother embodiments, the described user-written selectable items mayinclude multiple functions. For example, the letter “T” within a circlethat represents a time function and the letter “D” within a circle thatrepresents a date function may both be within a larger circle. Thislarger circle represents a user-written selectable item whereby a userinteracting with the larger circle initiates execution of both the timefunction and the date function.

FIGS. 2A through 2D illustrate exemplary user-written selectable itemson a sheet of paper, in accordance with embodiments of the presentinvention. With reference to FIG. 2A, user-written selectable element206 is the letter “M” 202 with the circle 204 around the letter “M” 202.User-written selectable item 206 is drawn on sheet 200 with a writingelement of an interactive device (e.g., writing element 118 of FIG. 1).

In one embodiment, user-written selectable item 206 represents a menufunction of the interactive device. To indicate a selection of aparticular menu item, directory, or subdirectory, a user may createanother user-written selectable item or make a gesture with theinteractive device 100. For example, if the user wants to proceed down asubdirectory of the menu, the user may then draw a checkmark 210 onsheet 200 to indicate that a selection has been made. After drawing thecheckmark, the menu items associated with user-written selectable item206 may be audibly rendered by audio output device 116, after eachsubsequent selection or “down-touch” of the interactive device 100 ontothe sheet 200 near user-written selectable item 206. Interaction withthe checkmark 210 then selects the last option that was audiblyrendered. For example, a “calculator” function could then be selectedafter the user hears the word “calculator” recited to change the mode ofoperation of the interactive device 100 to the calculator function

FIG. 2B shows how a user can create a paper calculator on a blankportion of sheet 200. In this example, after the user has selected the“calculator” function as described above, interactive device 100 audiblyprompts the user to write down the numbers 0-9 and the operators +, −,×, /, and =. For example, a user may be prompted to create theuser-written selectable items 220 including numbers and mathematicaloperators for operations such as addition, subtraction, multiplication,division, and equals. These are hard drawn on the surface. Interactivedevice 100 recognizes the positions of the created graphic elements andrecognizes the actual user-written selectable items created. A user canthen select at least two user-written selectable items to receive anaudio output related to the selection of those at least two graphicelements. For example, the user may select sequence of graphic elements“4” “+” “7” “=” to hear the interactive apparatus 100 recite the result“eleven.”

The menu represented by user-written selectable item 206 and the papercalculator represented by user-written selectable item 220 can bere-used at a later time, since interactive device 100 has stored thelocations of the user-written selectable items in memory unit 114. Also,an interaction of the pen with user-written selectable item 220 willautomatically invoke the calculator function.

FIG. 2B also includes data 230. In the example shown in FIG. 2B, data230 is the word “CAT”. It should be appreciated that data 230 can be anyinformation (e.g., alphanumeric symbol, image, drawing, marking, etc.)that may be used by an application operating on interactive device 100.When written, the text string, CAT, is automatically recognized as theword cat. Its location on the surface is also recorded. Interaction ofinteractive device 100 with this text string automatically recalls theidentified word CAT.

With reference to FIG. 2C, user-written selectable element 242 is theletter “T” with a circle drawn around the letter “T”. User-writtenselectable item 242 is drawn on sheet 200 with a writing element of aninteractive device (e.g., writing element 118 of FIG. 1). In oneembodiment, user-written selectable item 242 represents a time functionof the interactive device. Executing the time function causes theinteractive device to audibly render the current time. In oneembodiment, the interactive device may also audibly render the currentdate.

In one embodiment, once user-written selectable element 242 has beendrawn, the associated time function is immediately executed withoutrequiring further interaction between the user and sheet 200. Forexample, the time function may be immediately executed without requiringa user to draw any auxiliary writing (e.g., a checkmark) on sheet 200once user-written selectable element 242 has been recognized. It shouldbe appreciated that in some embodiments, an auxiliary writing may beprovided by a user to provide the functionality described above inaccordance with the description of checkmark 210, but that it is notnecessary. For instance, it may be desirable to immediately execute afunction without requiring additional user interaction to optimize theuser experience.

Still with reference to FIG. 2C, user-written selectable element 244 isthe letter “C” with a circle drawn around the letter “C”. User-writtenselectable item 244 is drawn on sheet 200 with a writing element of aninteractive device (e.g., writing element 118 of FIG. 1). In oneembodiment, user-written selectable item 244 represents the calculatorfunction of the interactive device as described in accordance with FIG.2B (e.g., user-written selectable items 220).

In one embodiment, once user-written selectable element 244 has beendrawn, an instructional message related to the operation of thecalculator function is audibly rendered without requiring furtherinteraction between the user and sheet 200. For example, onceuser-written selectable element 244 has been recognized, aninstructional message directing a user to draw a calculator, or aportion thereof, is audibly rendered without requiring a user to drawany auxiliary writing (e.g., a checkmark) on sheet 200. As describedabove, it should be appreciated that in some embodiments, an auxiliarywriting may be provided by a user to provide the functionality describedabove in accordance with the description of checkmark 210, but it is notnecessary. For instance, it may be desirable to provide instruction to auser as to the use of a function without requiring additional userinteraction to optimize the user experience.

With reference to FIG. 2D, user-written selectable element 254 is theletters “FT” with a circle drawn around the letters “FT”. User-writtenselectable item 254 is drawn on sheet 200 with a writing element of aninteractive device (e.g., writing element 118 of FIG. 1). In oneembodiment, user-written selectable item 254 represents a musicalkeyboard function of the interactive device.

In one embodiment, once user-written selectable element 254 has beendrawn, an instructional message related to the operation of the musicalkeyboard function is audibly rendered without requiring furtherinteraction between the user and sheet 200. For example, onceuser-written selectable element 254 has been recognized, aninstructional message directing a user to draw a keyboard 256, or aportion thereof, is audibly rendered without requiring a user to drawany auxiliary writing (e.g., a checkmark) on sheet 200.

Optical detector 120 is at one end of the stylus-shaped interactivedevice 100. Optical detector 120 is operable to detect information onthe surface. For example, optical detector 120 may comprise a chargecoupled device. In one embodiment, interactive device also comprises anoptical emitter for illuminating a portion of the surface that isdetected by optical detector 120. The information detected by opticaldetector 120 is transmitted to processor 112.

Processor 112 may include any suitable electronics to implement thefunctions of the interactive device 100. Processor 112 can recognize theuser-written selectable items and can identify the locations of thoseuser-written selectable items so that interactive device 100 can performvarious operations. In these embodiments, memory unit 114 may comprisecomputer code for correlating any user-written selectable items producedby the user with their locations on the surface.

Memory unit 114 comprises computer code for performing any of thefunctions of the interactive device 100. In one embodiment, whereincomputer code stored in memory unit 114 and implemented on processor 112is responsive to a user selection of a user-written selectable item andoperable to execute a function associated with the user-writtenselectable item in response to the selection. In another embodiment,computer code stored in memory unit 114 and implemented on processor 112is operable to direct audio output device 116 to audibly render alisting of potential user-written selectable items, wherein processor112 is operable to detect that a user has written a plurality ofuser-written selectable items, and wherein processor 112 responsive to auser selection of one or more user-written selectable items of theplurality of user-written selectable items is operable to execute adifferent function associated with each of the selected user-writtenselectable items.

In one embodiment, processor 112 is operable to automatically identify auser-written selectable item in response to a selection using symbolrecognition or character recognition. In another embodiment, processor112 is operable to automatically record a surface location of auser-written selectable item on the surface when it is written.Processor 112 is operable to automatically identify the user-writtenselectable item in response to a user selection based on a detectedsurface location of the user-written selectable item.

In one embodiment, the present invention provides an operating system ofinteractive device 100. The operating system is operable to detect auser-written selectable item on a surface, associate the user-writtenselectable item with a function, and, responsive to a user interactionwith the user-written selectable item, executing the associatedfunction.

In other embodiments, memory unit 114 may comprise computer code forrecognizing printed characters, computer code for recognizing a user'shandwriting and interpreting the user's handwriting (e.g., handwritingcharacter recognition software), computer code for correlating positionson an article with respective print elements, code for converting textto speech (e.g., a text to speech engine), computer code for recitingmenu items, computer code for performing translations of language(English-to-foreign language dictionaries), etc. Software for convertingtext to speech is commercially available from a number of differentvendors.

Memory unit 114 may also comprise code for audio and visual outputs. Forexample, code for sound effects, code for saying words, code for lessonplans and instruction, code for questions, etc. may all be stored inmemory unit 114. Code for audio outputs such as these may be stored in anon-volatile memory (in a permanent or semi-permanent manner so that thedata is retained even if the interactive apparatus is turned off),rather than on the article itself. Computer code for these and otherfunctions described in the application can be included in memory unit114, and can be created using any suitable programming languageincluding C, C++, etc.

Memory unit 114 may be a removable memory unit such as a ROM or flashmemory cartridge. In other embodiments, memory unit 114 may comprise oneor more memory units (e.g., RAM, ROM, EEPROM, etc.). Memory unit 114 maycomprise any suitable magnetic, electronic, electromagnetic, optical orelectro-optical data storage device. For example, one or moresemiconductor-based devices can be in memory unit 114.

Audio output device 116 may include a speaker or an audio jack (e.g.,and earpiece or headphone jack) for coupling to an earpiece or aheadset. In one embodiment, audio output device 116 is operable toaudibly render a list of potential user-written selectable items. Audiooutput device 116 may also be operable to audibly render information inresponse to a user selection of a user-written selectable item.

It should be appreciated that interactive device 100 is also operable torecognize and execute functions associated with pre-printed selectableitems on the surface. In one embodiment, responsive to a user selectionof a pre-printed selectable item on the surface, processor 112 isoperable to execute a function associated with a pre-printed selectableitem in response to a user selecting the pre-printed selectable item. Inone embodiment, processor 112 is operable to automatically identify apre-printed selectable using symbol recognition. In another embodiment,processor 112 is operable to automatically identify the pre-printedselectable item based on a detected surface location of the pre-printedselectable item. Moreover, in another embodiment, processor 112 isoperable identify an application program based on a particular boundedregion of the surface, such that different bounded regions areassociated with different application programs.

In some embodiments, the surface can be a sheet of paper with or withoutpre-printed selectable items. FIG. 3 shows a sheet of paper 15 providedwith a pattern of marks according to one embodiment of the presentinvention. In the embodiment of FIG. 3, sheet of paper 15 is providedwith a coding pattern in the form of optically readable position code 17that consists of a pattern of marks 18. The marks 18 in FIG. 3 aregreatly enlarged for the sake of clarity. In actuality, the marks 18 maynot be easily discernible by the human visual system, and may appear asgrayscale on sheet of paper 15. In one embodiment, the marks 18 areembodied as dots; however, the present invention is not so limited.

FIG. 4 shows an enlarged portion 19 of the position code 17 of FIG. 3.An interactive device such as interactive device 100 (FIG. 1) ispositioned to record an image of a region of the position code 17. Inone embodiment, the optical device fits the marks 18 to a referencesystem in the form of a raster with raster lines 21 that intersect atraster points 22. Each of the marks 18 is associated with a raster point22. For example, mark 23 is associated with raster point 24. For themarks in an image/raster, the displacement of a mark from the rasterpoint associated with the mark is determined. Using these displacements,the pattern in the image/raster is compared to patterns in the referencesystem. Each pattern in the reference system is associated with aparticular location on the surface 70. Thus, by matching the pattern inthe image/raster with a pattern in the reference system, the position ofthe pattern on the surface 70, and hence the position of the opticaldevice relative to the surface 70, can be determined.

In one embodiment, the pattern of marks on sheet 15 are substantiallyinvisible codes. The codes are “substantially invisible” to the eye ofthe user and may correspond to the absolute or relative locations of theselectable items on the page. “Substantially invisible” also includescodes that are completely or slightly invisible to the user's eye. Forexample, if dot codes that are slightly invisible to the eye of a userare printed all over a sheet of paper, the sheet may appear to have alight gray shade when viewed at a normal viewing distance. In somecases, after the user scans the codes with interactive device 100, audiooutput device 116 in interactive device 100 produces unique audiooutputs (as opposed to indiscriminate audio outputs like beeping sounds)corresponding to user-written selectable items that are associated withthe codes.

In one embodiment, the substantially invisible codes are embodied by dotpatterns. Technologies that read visible or “subliminally” printed dotpatterns exist and are commercially available. These printed dotpatterns are substantially invisible to the eye of the user so that thecodes that are present in the dot patterns are undetectable by theuser's eyes in normal use (unlike normal bar codes). The dot patternscan be embodied by, for example, specific combinations of small andlarge dots that can represent ones and zeros as in a binary coding. Thedot patterns can be printed with ink that is different than the ink thatis used to print the print elements, so that interactive device 100 canspecifically read the dot patterns.

Anoto, a Swedish company, employs a technology that uses an algorithm togenerate a pattern the enables a very large unique data space fornon-conflicting use across a large set of documents. Their pattern, iffully printed, would cover 70 trillion 8.5″×11″ pages with uniquerecognition of any 2 cm square on any page. Paper containing thespecific dot patterns is commercially available from Anoto. Thefollowing patents and patent applications are assigned to Anoto anddescribe this basic technology and are all herein incorporated byreference in their entirety for all purposes: U.S. Pat. No. 6,502,756,U.S. application Ser. No. 10/179,966, filed on Jun. 26, 2002, WO01/95559, WO 01/71473, WO 01/75723, WO 01/26032, WO 01/75780, WO01/01670, WO 01/75773, WO 01/71475, WO 00/73983, and WO 01/16691.

In some embodiments, the dot patterns may be free of other types of datasuch as data representing markers for data blocks, audio data, and/orerror detection data. As noted above, processor 112 in interactivedevice 100 can determine the location of the stylus using a lookuptable, and audio can be retrieved and played based on the locationinformation. This has advantages. For example, compared to paper thathas data for markers, audio, and error detection printed on it,embodiments of the invention need fewer dots, since data for markers,audio, and error detection need not be printed on the paper. Byomitting, for example, audio data from a piece of paper, more space onthe paper can be rendered interactive, since actual audio data need notoccupy space on the paper. In addition, since computer code for audio isstored in interactive device 100 in embodiments of the invention, it isless likely that the audio that is produced will be corrupted or alteredby, for example, a crinkle or tear in the sheet of paper.

It should be appreciated that although dot patterned codes arespecifically described herein, other types of substantially invisiblecodes may be used in other embodiments of the invention. For example,infrared bar codes could be used if the bar codes are disposed in anarray on an article. Illustratively, a sheet of paper may include a100×100 array of substantially invisible bar codes, each code associatedwith a different x-y position on the sheet of paper. The relative orabsolute locations of the bar codes in the array may be stored in memoryunit 114 in interactive device 100.

As noted, in some embodiments, the substantially invisible codes maydirectly or indirectly relate to the locations of the plurality ofpositions and/or any selectable items on the sheet. In some embodiments,the substantially invisible codes can directly relate to the locationsof the plurality of positions on a sheet (or other surface). In theseembodiments, the locations of the different positions on the sheet maybe provided by the codes themselves. For example, a first code at afirst position may include code for the spatial coordinates (e.g., aparticular x-y position) for the first position on the sheet, while asecond code at a second position may code for the spatial coordinates ofthe second position on the sheet.

Different user-written selectable items can be at the differentpositions on the sheet. These user-written selectable items may beformed over the codes. For example, a first user-written selectable itemcan be formed at the first position overlapping the first code. A seconduser-written selectable item can be formed at the second positionoverlapping the second code. When a user forms the first user-writtenselectable item, the scanning apparatus recognizes the formed firstprint element and substantially simultaneously scans the first code thatis associated with the formed first user-written selectable item.Processor 112 in interactive device 100 can determine the particularspatial coordinates of the first position and can correlate the firstuser-written selectable item with the spatial coordinates.

When the user forms the second user-written selectable item, thescanning apparatus recognizes the formed second user-written selectableitem and substantially simultaneously scans the second code. Processor112 can then determine the spatial coordinates of the second positionand can correlate the second user-written selectable item with thespatial coordinates. A user can then subsequently select the first andsecond user-written selectable items using interactive device 100, andinteractive device 100 can perform additional operations. For example,using this methodology, a user can create a user-defined interface or afunctional device on a blank sheet of paper.

Interactive device 100 may also include a mechanism that maps orcorrelates relative or absolute locations with the formed user-writtenselectable items in memory unit 114. The mechanism can be a lookup tablethat correlates data related to specific user-written selectable itemson the article to particular locations on an article. This lookup tablecan be stored in memory unit 114. Processor 112 can use the lookup tableto identify user-written selectable items at specific locations so thatprocessor 112 can perform subsequent operations.

The surface with the substantially invisible codes can be in anysuitable form. For example, the surface may be a single sheet of paper,a note pad, filler paper, a poster, a placard, a menu, a sticker, a tab,product packaging, a box, a trading card, a magnet (e.g., refrigeratormagnets), a white board, a table top, etc. Moreover, the surface may becomprised of any material, including but not limited to paper, wood,metal, plastic, etc. Any of these or other types of surfaces can be usedwith or without pre-printed selectable items. If the surface is a sheet,the sheet can be of any suitable size and can be made of any suitablematerial. For example, the sheet may be paper based, or may be a plasticfilm. In some embodiments, the surface may be a three-dimensionalarticle with a three-dimensional surface. The three-dimensional surfacemay include a molded figure of a human body, animals (e.g., dinosaurs),vehicles, characters, or other figures.

In some embodiments, the surface is a sheet and the sheet may be free ofpre-printed selectable elements such as printed letters or numbers(e.g., markings made before the user creates user-written selectableitems on the sheet). In other embodiments, pre-printed selectable itemscan be on the sheet (e.g., before the user creates user-writtenselectable items on the sheet). Pre-printed print elements can includenumbers, icons, letters, circles, words, symbols, lines, etc. Forexample, embodiments of the invention can utilize pre-printed forms suchas pre-printed order forms or voting ballots.

Interactive device 100 can be in any suitable form, in one embodiment,interactive device 100 is a scanning apparatus that is shaped as astylus. In one embodiment, interactive device 100 is pocket-sized. Thestylus includes a stylus housing that can be made from plastic or metal.A gripping region may be present on the stylus housing.

FIG. 5 shows a flowchart of the steps of a process 500 for facilitatinginteraction with user-written selectable items on a surface inaccordance with one embodiment of the present invention. Process 500depicts the basic operating steps of a user interface process asimplemented by an interactive device (e.g., interactive device 100) inaccordance with one embodiment of the present invention as it interpretsuser input in the form of user-written selectable items, graphicelements, writing, marks, etc. and provides the requested functionalityto the user.

At step 510, where the computer implemented functionality of the device100 detects a user-written selectable item on a writable surface. Atstep 512, the user-written selectable item is recognized along with thefunction of the user-written selectable item. This function can be, forexample, a menu function that can enunciate a predetermined list offunctions (e.g., menu choices) for subsequent activation by the user. Atstep 514, interaction with the user-written selectable item is detected.The interaction may include writing the user-written selectable item,interacting with the user-written selectable item with the interactivedevice (e.g., tapping the user-written selectable item), or interactingwith a related user-written selectable item (e.g., checkmark 210 of FIG.2B). The function is persistently associated with the user-writtenselectable item, enabling a subsequent access of the function (e.g., atsome later time) by a subsequent interaction (e.g., tapping) of thegraphical element icon. For example, in the case of a menu function, thelisted menu choices can be subsequently accessed by the user at somelater time by simply actuating the menu graphic element icon (e.g.,tapping it).

In this manner, embodiments of the present invention implement a userinterface means for navigating the functionality of an interactivedevice (e.g., interactive device 100 of FIG. 1) using a pen and papertype interface. The user interface as implemented by the user-writtenselectable items provides the method of interacting with a number ofsoftware applications that execute within interactive device 100. Asdescribed above, the input to interactive device 100 includes useractions, such as a user creating a user-written selectable item or auser interacting with a user-written or pre-printed selectable item. Theoutput from the pen is audio output, and thus, the user interface meansenables the user to carry on a “dialog” with the applications andfunctionality of the pen. In other words, the user interface enables theuser to create mutually recognized items such as user-written selectableitems on a surface that allow the user and the pen to interact with oneanother. As described above, the mutually recognized items are typicallysymbols or marks or icons that the user draws on a surface, such as asheet of paper.

FIG. 6 is a block diagram of a pen device 150 upon which otherembodiments of the present invention can be implemented. In general, pendevice 150 may be referred to as an optical device, more specifically asan optical reader, optical pen or digital pen. The device may contain acomputer system and an operating system resident thereon. Applicationprograms may also reside thereon.

In the embodiment of FIG. 6, pen device 150 includes a processor 32inside a housing 62. In one embodiment, housing 62 has the form of a penor other writing or marking utensil or instrument. Processor 32 isoperable for processing information and instructions used to implementthe functions of pen device 150, which are described below.

In the present embodiment, the pen device 150 may include an audiooutput device 36 and a display device 40 coupled to the processor 32. Inother embodiments, the audio output device and/or the display device arephysically separated from pen device 150, but in communication with pendevice 150 through either a wired or wireless connection. For wirelesscommunication, pen device 150 can include a transceiver or transmitter(not shown in FIG. 6). The audio output device 36 may include a speakeror an audio jack (e.g., for an earphone or headphone). The displaydevice 40 may be a liquid crystal display (LCD) or some other suitabletype of display.

In the embodiment of FIG. 6, pen device 150 may include input buttons 38coupled to the processor 32 for activating and controlling the pendevice 150. For example, the input buttons 38 allow a user to inputinformation and commands to pen device 150 or to turn pen device 150 onor off. Pen device 150 also includes a power source 34 such as abattery.

Pen device 150 also includes a light source or optical emitter 44 and alight sensor or optical detector 42 coupled to the processor 32. Theoptical emitter 44 may be a light emitting diode (LED), for example, andthe optical detector 42 may be a charge coupled device (CCD) orcomplementary metal-oxide semiconductor (CMOS) imager array, forexample. The optical emitter 44 illuminates surface 70 or a portionthereof. Light reflected from the surface 70 is received at and recordedby optical detector 42.

The surface 70 may be a sheet a paper, although the present invention isnot so limited. For example, the surface 70 may be an LCD (liquidcrystal display, CRT (cathode ray tube), touch screen, or other similartype of active electronic surface (e.g., the display of a laptop ortablet PC). Similarly, the surface 70 can be a surface comprisingelectronic ink, or a surface comprising reconfigurable paper.

In one embodiment, a pattern of markings is printed on surface 70. Theend of pen device 150 that holds optical emitter 44 and optical detector42 is placed against or near surface 70. As pen device 150 is movedrelative to the surface 70, the pattern of markings are read andrecorded by optical emitter 44 and optical detector 42. As discussed inmore detail above, in one embodiment, the markings on surface 70 areused to determine the position of pen device 150 relative to surface(see FIGS. 3 and 4). In another embodiment, the markings on surface 70are used to encode information (see FIGS. 8 and 9). The captured imagesof surface 70 can be analyzed (processed) by pen device 150 to decodethe markings and recover the encoded information.

Additional descriptions regarding surface markings for encodinginformation and the reading/recording of such markings by electronicdevices can be found in the following patents and patent applicationsthat are assigned to Anoto and that are all herein incorporated byreference in their entirety: U.S. Pat. No. 6,502,756, U.S. applicationSer. No. 101179,966, filed on Jun. 26, 2002, WO 01/95559, WO 01/71473,WO 01/75723, WO 01/26032, WO 01/75780, WO 01/01670, WO 01/75773, WO01/71475, WO 10 00/73983, and WO 01116691.

Pen device 150 of FIG. 6 also includes a memory unit 48 coupled to theprocessor 32. In one embodiment, memory unit 48 is a removable memoryunit embodied as a memory cartridge or a memory card. In anotherembodiment, memory unit 48 includes random access (volatile) memory(RAM) and read-only (non-volatile) memory (ROM) for storing informationand instructions for processor 32.

In the embodiment of FIG. 6, pen device 150 includes a writing element52 situated at the same end of pen device 150 as the optical detector 42and the optical emitter 44. Writing element 52 can be, for example, apen, pencil, marker or the like, and may or may not be retractable. Incertain applications, writing element 52 is not needed. In otherapplications, a user can use writing element 52 to make marks (e.g.,graphical elements or user-written selectable items) on surface 70,including characters such as letters, words, numbers, mathematicalsymbols and the like. These marks can be scanned (imaged) andinterpreted by pen device 150 according to their position on the surface70. The position of the user-produced marks can be determined using apattern of marks that are printed on surface 70; refer to the discussionof FIGS. 3 and 4, above. In one embodiment, the user-produced markingscan be interpreted by pen device 150 using optical character recognition(OCR) techniques that recognize handwritten characters.

As mentioned above, surface 70 may be any surface suitable on which towrite, such as, for example, a sheet of paper, although surfacesconsisting of materials other than paper may be used. Also, surface 70may or may not be flat. For example, surface 70 may be embodied as thesurface of a globe. Furthermore, surface 70 may be smaller or largerthan a conventional (e.g., 8.5×11 inch) page of paper.

FIG. 7 is a block diagram of another device 250 upon which embodimentsof the present invention can be implemented. Device 250 includesprocessor 32, power source 34, audio output device 36, input buttons 38,memory unit 48, optical detector 42, optical emitter 44 and writingelement 52, previously described herein. However, in the embodiment ofFIG. 7, optical detector 42, optical emitter 44 and writing element 52are embodied as optical device 251 in housing 62, and processor 32,power source 34, audio output device 36, input buttons 38 and memoryunit 48 are embodied as platform 202 in housing 74. In the presentembodiment, optical device 251 is coupled to platform 252 by a cable102; however, a wireless connection can be used instead. The elementsillustrated by FIG. 7 can be distributed between optical device 251 andplatform 252 in combinations other than those described above.

With reference back to FIG. 6, four positions or regions on surface 70are indicated by the letters A, B, C and D (these characters are notprinted on surface 70, but are used herein to indicate positions onsurface 70). There may be many such regions on the surface 70.Associated with each region on surface 70 is a unique pattern of marks.The regions on surface 70 may overlap because even if some marks areshared between overlapping regions, the pattern of marks in a region isstill unique to that region.

In the example of FIG. 6, using pen device 150 (specifically, usingwriting element 52), a user may create a character consisting, forexample, of a circled letter “M” at position A on surface 70 (generally,the user may create the character at any position on surface 70). Theuser may create such a character in response to a prompt (e.g., anaudible prompt) from pen device 150. When the user creates thecharacter, pen device 150 records the pattern of markings that areuniquely present at the position where the character is created. The pendevice 150 associates that pattern of markings with the character justcreated. When pen device 150 is subsequently positioned over the circled“M,” pen device 150 recognizes the pattern of marks associated therewithand recognizes the position as being associated with a circled “M.” Ineffect, pen device 150 recognizes the character using the pattern ofmarkings at the position where the character is located, rather than byrecognizing the character itself.

In one embodiment, the characters described above comprise “graphicelements” that are associated with one or more commands of the pendevice 150. It should be noted that such graphic elements that areassociated with, and are used to access the pen device 150 implementedfunctions comprising commands, are referred to as “graphic elementicons” hereafter in order to distinguish from other written characters,marks, etc. that are not associated with accessing functions orapplications of the pen device 150. In the example just described, auser can create (write) a graphic element icon that identifies aparticular command, and can invoke that command repeatedly by simplypositioning pen device 150 over the graphic element icon (e.g., thewritten character). In one embodiment, the writing instrument ispositioned over the graphical character. In other words, the user doesnot have to write the character for a command each time the command isto be invoked by the pen device 150; instead, the user can write thegraphic element icon for a command one time and invoke the commandrepeatedly using the same written graphic element icon. This attributeis referred to as “persistence” and is described in greater detailbelow. This is also true regarding graphical element icons that are notuser written but pre-printed on the surface and are neverthelessselectable by the pen device 150.

In one embodiment, the graphic element icons can include a letter ornumber with a line circumscribing the letter or number. The linecircumscribing the letter or number may be a circle, oval, square,polygon, etc. Such graphic elements appear to be like “buttons” that canbe selected by the user, instead of ordinary letters and numbers. Bycreating a graphic element icon of this kind, the user can visuallydistinguish graphic element icons such as functional icons from ordinaryletters and numbers, which may be treated as data by the pen device 150.Also, by creating graphic element icons of this kind, the pen device mayalso be able to better distinguish functional or menu item type graphicelements from non-functional or non-menu item type graphic elements. Forinstance, a user may create a graphic element icon that is the letter“M” which is enclosed by a circle to create an interactive “menu”graphic element icon.

The pen device 150 may be programmed to recognize an overlapping circleor square with the letter “M” in it as a functional graphic element asdistinguished from the letter “M” in a word. The graphic element iconmay also include a small “check mark” symbol adjacent thereto, within acertain distance (e.g., 1 inch, 1.5 inches, etc.). The checkmark will beassociated with the graphic element icon. Computer code for recognizingsuch functional graphic elements and distinguishing them from othernon-functional graphic elements can reside in the memory unit in the pendevice.

The processor can recognize the graphic element icons and can identifythe locations of those graphic element icons so that the pen device 150can perform various functions, operations, and the like associatedtherewith. In these embodiments, the memory unit may comprise computercode for correlating any graphic elements produced by the user withtheir locations on the surface. The pen device 150 recognizes a“down-touch” or “down-stroke” or being placed down upon the surface(e.g., when the user begins writing) and recognizes an “up-stroke” orbeing picked up from the surface (e.g., when the user finishes writing).Such down-strokes and up-strokes can be interpreted by the pen device150 as, for example, indicators as to when certain functionality isinvoked and what particular function/application is invoked (e.g.,triggering OCR processing). Particularly, a down-stroke quickly followedby an up-stroke (e.g., a tap of the pen device on the surface) can beassociated with a special action depending upon the application (e.g.,selecting a graphic element icon, text string, etc.).

It should be noted that the generic term “graphic element” may includeany suitable marking created by the user (e.g., a user-writtenselectable item), and is distinguishable from a graphic element iconwhich refers to a functional graphic element that is used to access oneor more functions of the device.

As mentioned above, it should be noted that graphic element icons can becreated by the pen device 150 (e.g., drawn by the user) or can bepre-existing (e.g., a printed element on a sheet of paper). Examplegraphic elements include, but are not limited to symbols, indicia suchas letters and/or numbers, characters, words, shapes, lines, etc. Theycan be regular or irregular in shape. User written/created graphicelements are typically created using the pen device 150. Additionally,graphic element icons usually, but not always, incorporate acircumscribing line (e.g., circle) around a character (e.g., the letter“M”) to give them an added degree of distinctiveness to both the userand the pen device 150. For example, in one embodiment, an up-strokeafter finishing a circle around the character can specifically indicateto the pen device 150 that the user has just created a graphic elementicon.

FIGS. 8A and 8B show a flowchart of the steps of a computer-implementedprocess 800 in accordance with one embodiment of the present invention.Process 800 depicts the basic operating steps of a process for audiblyinstructing a user to interact with a function as implemented by adevice (e.g., interactive device 100 of FIG. 1) in accordance with oneembodiment of the present invention as it interprets user input in theform of graphic elements, writing, marks, etc. and provides audibleinstruction regarding the requested functionality to the user.

Process 800 begins in step 805 of FIG. 8A, where thecomputer-implemented functionality of the interactive device 100associates a function with a user-written selectable item. In oneembodiment, interactive device 100 has stored therein a number offunctions, such as executable application programs, menu item, anapplication option selector, or an instance of data, which areassociated with respective user-written selectable items. For example,the letter C with a circle around it (e.g., user-written selectable item244 of FIG. 2C) may be associated with a calculator function.

At step 810, the interactive device recognizes the user-writtenselectable item written on a surface. A user creates the user-writtenselectable item. In one embodiment, the user-written selectable item isrecognized by optically recording positions of writing element 118 usingoptical detector 120. Pen device 100 performs image recognition of thepositions to recognize the user-written selectable item. In oneembodiment, the recognition of the user-written selectable item isperformed in response to detecting a termination event indicating thatthe user-written selectable item is complete. When the user is donewriting the user-written selectable item, the interactive device 100recognizes the fact that the user is finished by, for example,recognizing the inactivity (e.g., the user is no longer writing) as adata entry termination event. In this manner, a “timeout” mechanism canbe used to recognize the end of data entry. Another termination eventcould be a user completing the circle around the letter or letters.Additional examples of termination events are described in the commonlyassigned U.S. Patent Application, Attorney Docket No. LEAP-P0320,application Ser. No. 11/035,003 filed Jan. 12, 2005, by James Marggraffet al., entitled “TERMINATION EVENTS,” which is incorporated herein inits entirety.

In one embodiment, as shown at step 815, the function is executedwithout requiring a user to draw any auxiliary writing (e.g., acheckmark) on the surface. For example, where the function is a timefunction, once the user-written selectable item associated with the timefunction is recognized, the time function is immediately executed. Inthe case of a time function, the current time may be audibly rendered.It should be appreciated that step 815 is optional, and that thefunction need not be executed at this point in process 800.

At step 820, in response to recognizing the user-written selectableitem, a first instructional message related to the operation of theassociated function is audibly rendered without requiring furtherinteraction from the user (e.g., without requiring a user to draw anyauxiliary writing such as a checkmark) on the surface. In oneembodiment, the first instructional message directs the user to draw atleast one user interface element that enables the user to interact withthe function. For example, with reference to FIG. 2C, in response torecognizing user-written selectable item 244, an instructional messagedirecting a user to draw a box within which to draw a calculator isaudibly rendered. In another example, with reference to FIG. 2D, inresponse to recognizing user-written selectable item 254, aninstructional message directing a user to draw two horizontal lines isaudibly rendered

At step 825, it is determined whether a writing (e.g., a user interfaceelement) has been drawn on the surface within a predetermined time(e.g., three seconds or five seconds) since audibly rendering the firstinstructional message. If no writing has been drawn within thepredetermined time period, as shown at step 830, the first instructionalmessage is repeated. Alternatively, if a writing has been drawn on thesurface, process 800 proceeds to step 835 of FIG. 8B.

With reference now to FIG. 8B, at step 835 it is determined whether theuser interface element has been properly drawn on the surface, inaccordance with an embodiment of the present invention. For example,consider the calculator function described above. The user is initiallydirected to draw a box. Once a writing is detected on the surface,interactive device 100 will determine whether it is properly drawn. Inthe case of the calculator function, interactive device 100 willdetermine whether the user drew a box and whether that box is of theappropriate dimensions within which to draw additional user interfaceelements (e.g., numbers and operands).

If the user has not properly drawn the user interface element, as shownat step 840, a second instructional message including a hint about amanner in which the user should properly draw the user interface elementis audibly rendered. For example, if it is determined that the user hasdrawn a box in which a calculator is to be drawn, but that the box istoo small to fit all necessary information, the second instructionalmessage may direct the user to draw a bigger box. In another example,consider a user that is using the musical keyboard function and isinitially directed to draw two horizontal lines. If it is determinedthat the lines drawn by the user are not horizontal, (e.g. vertical ordiagonal), the second instructional message may inform the user thathorizontal lines are side-to-side.

Once it is determined that the user interface element is properly drawn,process 800 proceeds to step 845 and/or step 850. It should beappreciated that steps 845 and 850 are optional, and that one or both ofthese steps can be implemented.

At step 845, a third instructional message is rendered. For example, theuser may be directed to write the numbers zero through nine in thecalculator box. It should be appreciated that process 800 may thenperform steps similar to those described in steps 825 through 840 todetermine whether a writing has been written and whether that writing isproper. It should also be appreciated that any number of instructionalmessages may be audibly rendered to direct a user to draw user interfaceelements. Depending on the complexity of the user interface elements, anumber of instructional messages may be necessary to accurately describeto a user how to draw a particular user interface element. For example,a musical keyboard with sharps and flats keys, as well as a volumecontrol and a tempo control, may require more instructional messagesthan a musical keyboard that does not include sharps and flats keys, avolume control or a tempo control.

At step 850, the function is executed. For example, once the calculatoris drawn, the user may then interact with the calculator to performmathematical calculations. In one embodiment, a message is audiblyrendered informing the user that the calculator is ready for use.

In this manner, embodiments of the present invention provide a user withinstructional messages regarding the use of a selected function. Inparticular, the instructional messages are audibly rendered prior toexecuting the function and without requiring additional user interactionwith the surface. For example, in order for a user to utilize acalculator, the calculator must first be drawn. The user is directed todraw the necessary user interface elements prior to executing thecalculator function.

FIG. 9 shows a flowchart of the steps of a computer-implemented process900 in accordance with one embodiment of the present invention. Process900 depicts the basic operating steps of a process for automaticallyexecuting a function as implemented by a device (e.g., interactivedevice 100 of FIG. 1) in accordance with one embodiment of the presentinvention as it interprets user input in the form of graphic elements,writing, marks, etc. and provides audible instruction regarding therequested functionality to the user.

Process 900 begins in step 905, where the computer-implementedfunctionality of the interactive device 100 associates a function with auser-written selectable item. In one embodiment, interactive device 100has stored therein a number of functions, such as executable applicationprograms, menu item, an application option selector, or an instance ofdata, which are associated with respective user-written selectableitems. For example, the letter T with a circle around it (e.g.,user-written selectable item 242 of FIG. 2C) may be associated with atime function.

At step 910, the interactive device recognizes the user-writtenselectable item written on a surface. A user creates the user-writtenselectable item. In one embodiment, the user-written selectable item isrecognized by optically recording positions of writing element 118 usingoptical detector 120. Pen device 100 performs image recognition of thepositions to recognize the user-written selectable item. In oneembodiment, the recognition of the user-written selectable item isperformed in response to detecting a termination event indicating thatthe user-written selectable item is complete. When the user is donewriting the user-written selectable item, the interactive device 100recognizes the fact that the user is finished by, for example,recognizing the inactivity (e.g., the user is no longer writing) as adata entry termination event. In this manner, a “timeout” mechanism canbe used to recognize the end of data entry. Another termination eventcould be a user completing the circle around the letter or letters.Additional examples of termination events are described in the commonlyassigned U.S. Patent Application, Attorney Docket No. LEAP-P0320,application Ser. No. 11/035,003 filed Jan. 12, 2005, by James Marggraffet al., entitled “TERMINATION EVENTS,” which is incorporated herein inits entirety.

At step 915, the function is immediately executed without requiringfurther interaction between the user and the surface (e.g., withoutrequiring a user to draw any auxiliary writing such as a checkmark). Forexample, where the function is a time function, once the user-writtenselectable item associated with the time function is recognized, thetime function is immediately executed. In the case of a time function,the current time may also be audibly rendered.

At step 920, it is determined whether there is user interaction with theuser-written selectable item within a predetermined time (e.g., threeseconds or five seconds) since the function has been executed. If thereis no user interaction within the predetermined time period, as shown atstep 925, a first instructional message related to the operation of theassociated function is audibly rendered without requiring furtherinteraction from the user. For example, where the function is a timefunction, an instructional message informing a user that interactingwith the associated user-written selectable item would case the time tobe repeated may be audibly rendered.

Alternatively, if it is determined that there is user interaction withthe user-written selectable item within a predetermined time, as shownat step 930, the function is re-executed. For example, with reference toFIG. 2C, if a user interacts (e.g., taps) user-written selectable item242, the current time is audibly rendered. In one embodiment, the timefunction toggles between the current time and the current date for eachinteraction with user-written selectable item 242. In this manner,embodiments of the present invention provide a user with immediateexecution of a selected function. In particular, the function isexecuted without requiring additional user interaction with the surface.Accordingly, the user is provided with an efficient user interface bywhich functions that provide certain types of information may beimmediately executed.

Although embodiments of the present invention have been described in thecontext of using surfaces encoded with markings in order to determinelocation of the pen device, it should be noted that embodiments of thepresent invention are suitable for use with pen devices that determinelocation using other means that do not require encoded surfaces. Forexample, in one embodiment, a pen device can incorporate one or moreposition location mechanisms such as, for example, motion sensors,gyroscopes, etc., and can be configured to accurately store a preciselocation of a given surface (e.g., a sheet of paper). The preciselocation of the surface can be stored by, for example, sequentiallytouching opposite corners of the surface (e.g., a rectangular sheet ofpaper). The pen device would then recognize the location of graphicelements written by the user on the surface by comparing the storedprecise location of the surface with the results of its locationdetermination means.

Various embodiments of the invention, a method for audibly instructing auser to interact with a function, are thus described. While the presentinvention has been described in particular embodiments, it should beappreciated that the invention should not be construed as limited bysuch embodiments, but rather construed according to the below claims.

1. A method for audibly instructing a user to interact with a function,said method comprising: associating a function with a user-writtenselectable item; recognizing said user-written selectable item on asurface; and in response to said recognizing said user-writtenselectable item, audibly rendering a first instructional message relatedto the operation of said function without requiring further interactionfrom said user.
 2. The method as recited in claim 1 wherein said firstinstructional message directs said user to draw at least one userinterface element that enables said user to interface with saidfunction.
 3. The method as recited in claim 2 further comprising:determining whether a writing has been drawn on said surface within apredetermined time period since said audibly rendering said firstinstructional message; and provided no writing has been drawn on saidsurface within said predetermined time period, repeating said firstinstructional message.
 4. The method as recited in claim 2 furthercomprising: determining whether said user interface element has beenproperly drawn on said surface; and provided said user interface elementhas not been properly drawn on said surface, audibly rendering a secondinstructional message comprising a hint about a manner in which saiduser should properly draw said user interface element.
 5. The method asrecited in claim 4 further comprising, provided said user interfaceelement has been properly drawn, audibly rendering a third instructionalmessage.
 6. The method as recited in claim 4 further comprising,provided said user interface element has been properly drawn, executingsaid function.
 7. The method as recited in claim 1 further comprising,in response to a user interaction with said user-written selectableitem, repeating said first instructional message.
 8. The method asrecited in claim 1 further comprising executing said function prior toaudibly rendering said first instructional message.
 9. The method asrecited in claim 1 wherein said recognizing said user-written selectableitem is performed in response to detecting a termination eventindicating that said user-written selectable item is complete.
 10. Themethod as recited in claim 1 wherein said recognizing said user-writtenselectable item comprises: optically recording positions of the tip of apen computer; and performing image recognition of said positions torecognize said user-written selectable item.
 11. The method as recitedin claim 1 wherein said audibly rendering said first instructionalmessage is performed by an audio output device of a pen computer.
 12. Amethod for automatically executing a function, said method comprising:associating a function with a user-written selectable item; recognizingsaid user-written selectable item on a surface; and in response to saidrecognizing said user-written selectable item, immediately executingsaid function without first requiring further interaction between a userand said surface.
 13. The method as recited in claim 12 furthercomprising audibly rendering an instructional message related to theoperation of said function without first requiring further interactionbetween said user and said surface.
 14. The method as recited in claim13 wherein said audibly rendering said instructional message isperformed in response to the lapsing of a predetermined time periodwithout user interaction with said surface.
 15. The method as recited inclaim 12 further comprising, in response to a user interaction with saiduser-written selectable item, re-executing said function.
 16. The methodas recited in claim 12 wherein said recognizing said user-writtenselectable item is performed in response to detecting a terminationevent indicating that said user-written selectable item is complete. 17.The method as recited in claim 12 wherein said immediately executingsaid function without first requiring further interaction between a userand said surface comprises immediately executing said function withoutfirst requiring auxiliary writing by said user on said surface.
 18. Acomputer-usable medium having computer-readable program code embodiedtherein for causing a computer system to perform a method for audiblyinstructing a user to interact with a function, said method comprising:associating a function with a user-written selectable item; recognizingsaid user-written selectable item on a surface; and in response to saidrecognizing said user-written selectable item, audibly rendering a firstinstructional message related to the operation of said function withoutrequiring further interaction from said user.
 19. The computer-usablemedium as recited in claim 18 wherein said first instructional messagedirects said user to draw at least one user interface element thatenables said user to interface with said function.
 20. Thecomputer-usable medium as recited in claim 19, wherein said methodfurther comprises: determining whether a writing has been drawn on saidsurface within a predetermined time period since said audibly renderingsaid first instructional message; and provided no writing has been drawnon said surface within said predetermined time period, repeating saidfirst instructional message.